<?php
$this->breadcrumbs()->addPage('Tramitação', 'processos');
echo $this->breadcrumbs()->render();

echo $this->render('snippets/abasTramitacao.phtml');

echo $this->pagenav()->openList();

$html = '<div class="total_documents">Total de itens: <strong>' . $this->totalDocumentos . '</strong></div>';
echo $this->pagenav()->customHelperLinks($html);

echo $this->pagenav()->closeList();
?>

<div id="article">
    <?php echo $this->render('snippets/formularioPesquisaRapidaProcesso.phtml') ?>

    <?php if ($this->mostrar <> 'true'){ ?>
        
        <?php if (count($this->listaOrigens) > 1) : ?>
            <strong>Selecione a lotação:</strong>
            <select id="lotacao-usuario">
                <?php foreach ($this->listaOrigens as $key => $value) : ?>
                    <option value="<?php echo $key; ?>"><?php echo $value; ?></option>
                <?php endforeach;?>
            </select>
        <?php endif;?>
        <br/>
        <a id="listar-processos" href="<?php echo $this->url(array("action" => 'index','mostrar' => 'true'))  ?>" >Listar Processos</a>
        <?php 
            $this->headScript()->appendScript('
                $(function (){
                    var select_lotacao_usuario = $("select#lotacao-usuario");
                    if (select_lotacao_usuario.length) {
                        var lotacao_id_escolhida = $("select#lotacao-usuario").find("option").first().val();
                        var url_listar = $("a#listar-processos").attr("href");
                        $("a#listar-processos").attr("href", url_listar + "/lotacao_id/" + lotacao_id_escolhida);
                        select_lotacao_usuario.change(function (event){
                            lotacao_id_escolhida = $(this).find("option:selected").val();
                            $("a#listar-processos").attr("href", url_listar + "/lotacao_id/" + lotacao_id_escolhida);
                        });
                    }
                });
            ');
        ?>
    
    <?php } ?>
    <?php
    if ($this->mostrar == 'true') { ?>
    <form action="<?php echo $this->simpleUrl('receber') ?>" method="post">
        <?php
        echo $this->buttonlist()->open();
        echo $this->buttonlist()->defaultBlockActionsDescription();
        echo $this->buttonlist()->button('Receber', null, array(), array("action" => $this->simpleUrl('receber-entrada', 'processos-ajax')));
        echo $this->buttonlist()->close(true);
        ?>
        <div id="grid"></div>
        <?php
        if ($this->paginator) :
            echo $this->partial('snippets/gridProcessos.phtml', array('paginator' => $this->paginator, 'exibirCheckbox' => true, 'indicarPrioritarios' => true));
        else :
            $js = '
                $(function(){
                    $.ajax({
                        type: "post",
                        url: "' . $this->simpleUrl('caixa-entrada', 'processos-ajax') . '",
                        success: function(retorno){
                            $("#grid").html(retorno);
                        }
                    });
                });
                ';
            $this->headScript()->appendScript($js);
        endif;
        ?>
    </form>
        <?php    } ?>
</div>

<?php
$js = '
    $(function(){
        var BASE_URL = "' . $this->baseUrl() . '"
            
        $("button").live("click", function(){
            var form_action_ajax = $(this).attr("action")
            
            if (form_action_ajax != undefined) {
                var linhas_selecionadas = $("tr.marked")
                
                if (linhas_selecionadas.length > 0 && linhas_selecionadas.length < 11) {
                    var processos_id = []
                    
                    linhas_selecionadas.each(function(index){
                        processos_id.push($(this).find("td:first input").val())
                    })
                    
                    processos_id.reverse()
                    
                    var processo_id_atual = processos_id.pop()
                    var chamar_ajax = true
                    var loop_ajax = setInterval(function(){
                        if (processo_id_atual == undefined) {
                            clearInterval(loop_ajax)
                            window.location = BASE_URL + "/entrada/receber-ok"
                            
                            return false
                        }
                        
                        if (chamar_ajax) {
                            chamar_ajax = false
                            caixa_analise_id = ""
                            var linha_processo = $("tr.marked:first")

                            $.ajax({
                                type: "POST",
                                data: {"processoId" : processo_id_atual, "caixaAnaliseId" : caixa_analise_id},
                                url: form_action_ajax,
                                beforeSend: function()
                                {
                                    linha_processo.find("input").hide()
                                    linha_processo.find("td:first").append("<img id=\"indicator\" src=\"" + BASE_URL + "/img/indicator.gif\">")
                                    linha_processo.attr("style", "opacity:0.4;")
                                },
                                success: function(retorno)
                                {
                                    caixa_analise_id = retorno
                                    linha_processo.remove()
                                    processo_id_atual = processos_id.pop()
                                    chamar_ajax = true
                                },
                                error: function(retorno)
                                {
                                    var numero_processo = linha_processo.find("td:eq(2)").html().replace(/\//g, "_")
                                    window.location = BASE_URL + "/entrada/receber-falha/np/" + numero_processo
                                    
                                    return false
                                }
                            })

                        }
                    }, 200)
                    
                    return false
                }
            }
        })
    })
    ';
$this->headScript()->appendScript($js);
?>